package c10异常;

public class Java7新增的多异常捕获 {
	public static void main(String[] args) {
		try {
			int a = Integer.parseInt(args[0]);
			int b = Integer.parseInt(args[1]);
			int c = a / b;
			System.err.println("您输入的两个数相除的结果是：" + c);
		}
		//多个异常类型用|连接，然后后面是一个异常对象——catch一次还是只能捕获一个异常！
		catch (IndexOutOfBoundsException | NumberFormatException
				| ArithmeticException ie) {
			System.err.println("程序发生了数组越界、数字格式异常、算术异常之一");
			//@@捕捉多异常时，异常变量默认有final修饰，所以下面代码有错：
			//ie = new ArithmeticException("test");  //①
		} catch (Exception e) {
			System.err.println("未知异常");
			//捕捉一个类型的异常时，异常变量没有final修饰
			//所以下面代码完全正确。
			e = new RuntimeException("test");    //②
		}
	}
}


